The present invention relates to a mass data storage and retrieval system formed of one or more arrays of interconnected hardware modules. The need to retain and retrieve large volumes of digital data has resulted in the requirement for ever increasing amounts of data storage devices. Data can be stored, of course, on cassettes, floppy disks, diskettes, hard disks, optical disks, capacitive disks and the like. However, the greater the amount of memory existing, the more difficult it becomes to access the information from multiple input computers in rapid access times and with maximum system fault tolerance.
In order to improve fault tolerance, the prior art has provided disk files comprising a number of stacks having alternate data paths provided using crossbars. This provides some fault tolerance since if one data path fails another can be used.
Other prior art systems utilize a plurality of data storage mediums having a robotic arm control which retrieves the storage disks or cassettes from memory and places them in the recorder. Still other systems include data storage media which are transported to a transducer mechanism such as is utilized for magnetic tape, floppy disk, hard disk and other mass storage devices. After the transducer has completed its use of a particular storage medium, the medium is returned to the storage area from which it came and then another unit is retrieved, transported to and placed in the transducer. Some prior art systems disclose fault tolerant computer systems including a robot maintenance means which is used to replace faulty modules and still others disclose an optical storage/retrieval including a random access arm supplying several users.
Some prior art data storage systems include optical storage wherein a plurality of cartridge storage slots are positioned in diverse locations and orientations and use both vertical and horizontal retrieval systems. Still other systems utilize disk storage and have a disk transport assembly which moves in parallel with the array of the disks independently of the disk retainer and is moveable between a first position operative to have a disk transferred between the array of disks and a disk carrier and a second position operative to have a disk transferred between the disk carrier and the disk retainer.
Still, these systems are inadequate. No matter what drive and storage medium is used in any given installation, use of the system invariably places demands on mass storage that soon exceed the available capacity of the system. Often these demands are not foreseen when the system is initially planned and the need then arises to expand the system. It is difficult to expand such a system in an economical manner. Further, it is difficult in such systems to have parallel operations whereby several computers may be simultaneously accessing the mass storage library where, in some cases, one computer is writing information into the mass storage library while simultaneously another computer is reading information from another part of the mass storage library.
The present invention not only allows the formation of mass storage libraries with a module system to provide versatility, but it also provides the concept of global access. Global access provides maximum system fault tolerance thereby increasing system availability. Such global access in the present invention is provided at many levels, from the interface to the storage medium. Each tape server interface computer is connected to a network to interface with one or more host computers. This provides the ability for each host computer to choose any tape server interface computer. Each tape server interface computer is, in turn, connected to the tape drives through a crossbar switch. The crossbar switch, as used in the present invention, allows global access of multiple computer peripherals to a set of computers. This provides better utilization of the peripherals and provides fault tolerance of both computer failure and peripheral failure. Further, the novel configuration of storage modules, which may include both rotational modules and lateral transfer modules, allows any storage medium in the mass storage library such as a cassette tape, floppy disk and the like to be placed into any one of multiple recorder modules.
The rotational storage modules provide a bank of storage media which, in the preferred embodiment, are in the form of cassettes and form a plurality of rows of aligned racks each of which holds a plurality of the data storage media in a vertical array of parallel slots. Each of the racks has the slots in two opposing sides for holding the storage media such as, for instance, tape cassettes. While it is to be understood that any type of storage medium could be used in the present invention, for purposes of simplicity, such medium will hereafter be referred to as cassettes. An automatic tape cassette accessor is associated with each row of storage racks and with a plurality of data recorder modules for retrieving a designated one of the tape cassettes from a slot in one of the storage racks and inserting it in one of the recorder modules for read and write operations. So that the tape cassette on either opposing side of the rack may be retrieved by the same automatic accessor, each rack may be selectively rotated 180.degree..
Further, each of the accessors is located between two rows of the rotatable racks such that the tape cassettes on opposing sides of the racks in either row may be retrieved by a common accessor.
Thus, if an accessor on either row fails, the tape cassettes normally facing that accessor can be made available to the functioning accessor on the adjacent row by rotating the storage module. This ability to rotate the tape cassettes can also be used to migrate the tape cassettes to idle recorder modules which results in a load leveling of tasks and a more efficient use of recorder resources.
In addition, a lateral transfer trolley is associated with an end of each row of the rotatable racks for moving tape cassettes between the rows. A cassette tape storage unit is associated with and moveable on the trolley from one row to another, the storage unit having slots for storage of the tape cassettes. The slots on the storage unit are accessible by each automatic accessor so as to enable a tape cassette to be transferred from one row to another.
The subsystem for driving the recorder module has an electronic interface and buffering which is controlled with a micro-controller component that customizes the electronics for the desired computer interface. In addition, the drive subsystem contains special read-after-write processing hardware which enables the drive subsystem to provide a system bit error rate substantially better than the recorder alone can provide and makes screening of tapes unnecessary. This circuit does a bit-for-bit compare of the read-after-write data provided by the recorder. If the compare fails or if the internal error correction passes a preset error threshold, then the data block which is in error, or suspect, is rewritten on the tape. This procedure is novel because the block of data is rewritten on a new block of the tape without stopping or repositioning the tape during the operation. This allows areas of tapes which contain flaws beyond acceptable error correction capabilities to be effectively edited from the tape while data is being recorded. In addition, the magnetic tape cassettes used in the mass storage library are bulk erasable.
To maintain a directory of the data that is contained on the library tapes, the mass storage library concept separates the directory data from the library data by placing the directory data on a high density, random access removable, erasable media (e.g., optical disk or magnetic disk). This allows the directory information to be quickly accessed without having to access the actual library data. The directory media are configured using a "jukebox" system to allow an expandable, on-line archive of the directory data.
The control of the tape drives is divided between network and direct interface depending upon the operational state of the tape drive. When the tape drive controller is in an off-line state, control may be provided by any computer over the network. This allows performance of diagnostics and, in the case of tape drives, loading and unloading, and threading and positioning, to be accomplished by any computer on the network. When the tape drive controller is in an on-line mode, control is provided through the interface in the conventional manner by the on-line interface computer.